Information processing apparatus, and control method and storage medium therefor

ABSTRACT

An information processing apparatus configured to notify information on processing in a notification method different depending on whether the processing to be executed by a processing unit is one executed in response to a request from a web application accessed by the apparatus. The information processing apparatus registers identification information for the web application accessed by the apparatus, and determines whether a job to be executed by the apparatus is one requested by a web application corresponding to any of registered identification information. When it is determined that the job is one requested by a web application corresponding to any of the registered identification information, the progress of the job is displayed in detail. When it is determined that the job is not one requested by a web application corresponding to any of the registered identification information, the progress of the job is briefly displayed or is not displayed.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an information processing apparatusthat executes processing requested by a web application provided on anexternal apparatus, and relates to a control method for the informationprocessing apparatus and a storage medium for executing the method.

2. Description of the Related Art

In internet-related fields, it has recently been known to access via aweb browser a web application provided on an external apparatus (e.g.,web server) on the Internet, to thereby utilize a service offered by theweb application.

FIG. 15 shows operations performed to utilize via a web browser aservice offered by a web application provided on a web server.

In step S1501, the web browser accesses the web server and requests theweb application on the web server to execute processing. In step S1502,the web application executes the requested processing.

In step S1503, the web application notifies an execution result of theprocessing to the web browser. In step S1504, the web browser updates abrowser display screen to report the notified processing result to auser.

Also, there has recently been known a system in which when receiving arequest for processing from a web browser, a web application on a webserver requests other apparatus than the web server to execute theprocessing.

In an example shown in FIG. 16, a web browser requests a web applicationon a web server to execute processing (step S1601).

The web application receiving the request from the web browser executesthe requested processing (step S1602), and requests another apparatus,e.g., a printer, to execute print processing (step S1603).

The printer receiving the request from the web application executes therequested print processing (step S1604), and notifies a print processingresult to the requestor web application (step S1605). In step S1606, theweb application notifies the print processing result notified from theprinter to the web browser that first requests execution of theprocessing.

As described above, the method shown in FIG. 16 enables the webapplication to utilize processing means provided in another apparatus,thereby expanding a range of services which the web application canoffer. It is also possible to notify a processing result to a webbrowser user by notifying the result of processing performed by theprocessing means (the printer in the example of FIG. 16) of the otherapparatus to the web browser that first requests execution of theprocessing.

Another method for notifying a result of processing executed by aprinter or other processing means to a user is known, e.g., fromJapanese Laid-open Patent Publication No. 2001-356853.

Japanese Laid-open Patent Publication No. 2001-356853 disclosesmonitoring states of image processing jobs, which are being executed byprocessing means (printer or scanner) of an image processing apparatus,and causing an operation unit of the image processing apparatus todisplay operation statuses of the processing means.

As described above with reference to FIG. 16, even when processing isexecuted by a web application by utilizing processing means of anotherapparatus, it is necessary to notify a result of processing executed bythe processing means to a requestor user. In that case, however, theresult of the processing executed by the processing means of the otherapparatus is notified to the requestor via the web server, and therealtimeness is therefore lowered in some cases.

Especially, in a case that both a requestor web browser and a printer(processing means of another apparatus utilized by a web application)are provided in one information processing apparatus, it is inefficientto notify via the web server a result of print processing performed bythe printer.

FIG. 17 shows a conventional arrangement to notify a result of printprocessing executed by a printer of an information processing apparatushaving therein both a requestor web browser and the printer serving asprocessing means of another apparatus utilized by a web application.

Reference numeral 1701 denotes an MFP (multi function peripheral) as theinformation processing apparatus, and 1702 denotes a web serverconnected with the MFP 1701 via a network. The MFP 1701 includes anoperation unit 1703 for displaying, e.g., the progress of processingwhich is being executed by the MFP, a control unit 1704 for controllingthe entire MFP 1701, and a printer 1705 for executing requestedprocessing. The web server 1702 includes a RAM 1706, a web application1707, and a LAN I/F 1708 for exchanging information with the MFP 1701.

The following is a description of control for causing the operation unit1703 to display, e.g., the progress of processing which is beingexecuted by the MFP 1701. First, the printer 1705 notifies an event tothe control unit 1704, as shown at reference numeral 1711. The controlunit 1704 notifies the received event to the web application 1707, asshown at 1712.

In the web application 1707, various events which are able to take placein the MFP 1701 are managed in correspondence with drawing data to bedisplayed by the web browser. As shown at reference numeral 1713, theweb application 1707 creates drawing data in accordance with the contentof the event notified from the MFP 1701. The web server 1702 thentransmits the drawing data created by the web application 1707 to theMFP 1701, as shown at reference numeral 1714. Finally, as shown at 1715,the MFP 1701 updates a web browser display based on the received drawingdata.

As described above, heretofore, the information processing apparatustakes the trouble to transmit and receive a result of its own processingto and from the web server via the network even simply to notify theprocessing result to an apparatus user, resulting in problems that therealtimeness is lowered and network traffic increases.

It is considered that a processing result may be notified to the user byusing the method disclosed in Japanese Laid-open Patent Publication No.2001-356853 in a case that processing is executed in response to arequest from a web application, as with the case where processing isexecuted in response to a request from a local application provided onthe information processing apparatus. Specifically, it is consideredthat irrespective of whether the processing is executed in response to arequest from the local application or from the web application, theprocessing result may be notified to the user without the interventionof the web server.

In that case, however, the processing result is notified, withoutdiscriminating whether the processing is executed in response to arequest from the local application on the information processingapparatus or from the web application. Thus, there is a fear that thefollowing problems are posed.

Specifically, when a user A currently operating the informationprocessing apparatus accesses the web application via the web browser,there is a fear that a result of processing executed in accordance withinstructions given by another user B other than the user A is notifiedto the user A. In that case, the user A notified of the processingresult is confused since the user A cannot easily identify whether thenotified processing result is one for the processing executed accordingto instructions given by the user A or given by another user.

It should be noted that the processing executed according toinstructions from the user B includes, e.g., processing executed by theprinter of the information processing apparatus in accordance withinstructions given from the user B by remote operation to the localapplication on the information processing apparatus, and processingwhose execution is requested to the printer of the informationprocessing apparatus from a web application to which the execution ofthe processing is requested by the user B via another informationprocessing apparatus.

As described above, processing means such as a printer provided in aninformation processing apparatus is not only able to execute processingin response to a request, from a web application, based on instructionsgiven by a user currently operating the information processingapparatus, but also able to execute processing in accordance withvarious requests. As a result, the above described problems can becaused.

SUMMARY OF THE INVENTION

The present invention provides an information processing apparatuscapable of notifying information on processing in a notification methoddifferent depending on whether the processing is one executed inresponse to a request from a web application accessed from theinformation processing apparatus, and provides a control method for theinformation processing apparatus and a storage medium for executing thecontrol method.

According to a first aspect of this invention, there is provided aninformation processing apparatus having a processing unit configured tocommunicate with an external apparatus which is connected via a networkto the information processing apparatus and to execute processing inresponse to a request from any of at least one web application providedon the external apparatus, comprising an access unit configured toaccess any of the at least one web application provided on the externalapparatus, a determination unit configured to determine whetherprocessing to be executed by the processing unit is one executed inresponse to a request from any of the at least one web applicationaccessed by said access unit, a selection unit configured to select anotification method different depending on whether it is determined bythe determination unit that the processing to be executed by theprocessing unit is one executed in response to a request from any of theat least one web application accessed by said access unit, and anotification unit configured to notify information on the processinghaving been or being executed by the processing unit in the notificationmethod selected by the selection unit.

According to a second aspect of this invention, there is provided aninformation processing apparatus having a processing unit configured tocommunicate with an external apparatus which is connected via a networkto the information processing apparatus and to execute processing inresponse to a request from any of at least one web application providedon the external apparatus, comprising an access unit configured toaccess any of the at least one web application provided on the externalapparatus, a determination unit configured to determine whetherprocessing to be executed by the processing unit is one executed inresponse to a request from any of the at least one web applicationaccessed by said access unit, and a notification unit configured tonotify information on the processing having been or being executed bythe processing unit in a case where it is determined by thedetermination unit that the processing to be executed by the processingunit is one executed in response to a request from any of the at leastone web application accessed by said access unit.

According to third and fourth aspects of this invention, there areprovided control methods for the information processing apparatusesaccording to the first and second aspects of this invention.

According to fifth and sixth aspects of this invention, there areprovided computer-readable storage media each storing a program forcausing a computer to execute a corresponding one of the control methodsaccording to the third and fourth aspects of this invention.

With the present invention, it is possible to provide an arrangementcapable of notifying information on processing in a notification methoddifferent depending on whether the processing is one executed inresponse to a request from a web application accessed from aninformation processing apparatus.

Further features of the present invention will become apparent from thefollowing description of an exemplary embodiment with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing an example construction of aninformation processing apparatus according to one embodiment of thisinvention;

FIG. 2 is a block diagram showing an example construction of a webserver shown in FIG. 1;

FIG. 3 is a block diagram showing an example functional construction ofan application developed on a RAM of the web server;

FIG. 4 is an external view of an operation unit of an MFP shown in FIG.1;

FIG. 5 is a view showing an example operation screen of the MFP;

FIG. 6 is a view showing an example basic screen in a WEB browsing modeof the MFP;

FIG. 7 is a flowchart showing the procedures of processing executed bythe MFP;

FIG. 8 is a flowchart showing the procedures of processing performed instep S701 in FIG. 7;

FIG. 9 is a view showing an example of web application identificationinformation;

FIG. 10 is a flowchart showing the procedures of processing performed instep S702 in FIG. 7;

FIG. 11 is a flowchart showing the procedures of processing performed instep S703 in FIG. 7;

FIG. 12 is a flowchart showing the procedures of processing performed instep S705 in FIG. 7;

FIG. 13 is a view showing an example web application;

FIG. 14 is a view showing an example scan/print start screen;

FIG. 15 is a sequence diagram showing example procedures of processingexecuted by a web browser and a web server in a case where a webapplication on the web server is utilized via the web browser;

FIG. 16 is a sequence diagram showing example procedures of processingexecuted by a web application when the web application requests aprinter to execute processing; and

FIG. 17 is a view for explaining control of processing progress displayin an information processing apparatus having therein both a web browserand a printer which is utilized by a web application.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

In the following, one embodiment of the present invention will bedescribed with reference to FIGS. 1 to 14. FIG. 1 shows in block diagraman example construction of an information processing apparatus of theembodiment. Hereinafter, an MFP 100 will be described as an example ofthe information processing apparatus, but this is not limitative. Thisinvention is applicable to any other information processing apparatusconnectable to a network, such as a printer or a facsimile machine.

The MFP 100 includes a control unit 110, scanner unit 130, printer unit140, and operation unit 150. The control unit 110 includes a CPU 111,RAM 112, ROM 113, HDD 114, operation unit I/F 115, LAN I/F 116, memory117, and image bus I/F 118. The control unit 110 further includes an RIPunit 119, device I/F 120, scanner image processing unit 121, printerimage processing unit 122, and image conversion processing unit 123. Thescanner unit 130 is an image input device that reads an image of anoriginal. The printer unit 140 is an image output device that forms animage onto a recording medium based on image data.

The control unit 110 is connected with the scanner unit 130 and theprinter unit 140, and controls input and output of image information.The control unit 110 is also connected with a LAN 170, and controlsinput and output of image information such as video data or still imagedata received from a web server 180 or a host PC 160, deviceinformation, and other information.

The CPU 111 controls overall operation of the MFP 100. Specifically, theCPU 111 loads into the RAM 112 a program stored in the ROM 113 or theHDD 114, and executes the program to perform various control. The RAM112 also functions as an image memory that temporarily stores imagedata. The ROM 113 is a boot ROM that stores a system boot program. TheHDD (hard disk drive) 114 stores system software, image data, a programfor control of operation of the MFP 100, etc.

The operation unit I/F 115 is an interface to connect the operation unit150 with the control unit 110. The operation unit I/F 115 outputs to theoperation unit 150 image data to be displayed on the operation unit 150,and conveys to the CPU 111 information which is input by a user via theoperation unit 150.

The LAN I/F 116 is connected to the LAN 170 and controls input andoutput of information from and to external apparatuses connected to theLAN 170. The LAN I/F 116 is an example means for accessing a webapplication provided on a web server on the Internet. The memory 117stores still image data and other data, as with the HDD 114. It shouldbe noted that the memory 117 may be implemented by a removable externalstorage device. The image bus I/F 118 controls high-speed input andoutput of image data from and to an image bus.

The RIP (raster image processor) unit 119 receives PDL from the host PC160 via the LAN 170 and the LAN I/F 116 and develops the PDL into bitmap image. The device I/F 120 connects the control unit 110 with thescanner unit 130 and the printer unit 140 which are image input andoutput devices, and performs synchronous/asynchronous conversion ofimage data.

The scanner image processing unit 121 performs image processing on imagedata of an original read by the scanner unit 130. The printer imageprocessing unit 122 performs image processing on image data to be outputto the printer unit 140. The image conversion processing unit 123performs image conversion on image data stored in the RAM 112.Specifically, the image conversion processing unit 123 performs rotationprocessing, resolution conversion, or other processing on the imagedata. Also, the unit 123 converts binary image into multi-valued image,and converts multi-valued image into binary image.

Next, the web server 180 is described with reference to FIG. 2. FIG. 2shows in block diagram an example construction of the web server 180.

The web server 180 includes a CPU 181, RAM 182, ROM 183, HDD 184, memory185, input/output I/F 186, and LAN I/F 187. The CPU 181 controls overalloperation of the web server 180. Specifically, the CPU 181 loads intothe RAM 182 a program stored in the ROM 183 or the HDD 184, and executesthe program to carry out various control. The ROM 183 is a boot ROM thatstores a system boot program. The HDD 184 stores system software, aprogram for controlling the operation of the web server 180, etc.

As with the HDD 184, the memory 185 stores various data. It should benoted that the memory 185 may be implemented by, e.g., a removableexternal storage device. The input/output I/F 186 is an interface forconnecting the web server 180 with input/output devices such as mouse,keyboard, and monitor. The LAN I/F 187 is connected with the LAN 170 andcontrols input and output of various information.

Next, with reference to FIG. 3, a description is given of the functionalconstruction of an application executed on the web server 180. The webserver 180 is an external apparatus connected with the informationprocessing apparatus (MFP 100) via the network. FIG. 3 shows in blockdiagram an example functional construction of the application developedon the RAM 182 of the web server 180. In the following, blocks (modules)of the application which mainly relate to this embodiment are described.The application can be configured to include other blocks.

The web application that offers a service executed by the web server 180includes a module control section 301, communication destinationregistering section 302, service processing section 303, andtransmission/reception data processing section 304. The module controlsection 301 overall controls the respective modules of the webapplication. The communication destination registering section 302registers network information representing, e.g., an IP address ofanother apparatus that is utilized by the web application to offer theservice. The service processing section 303 executes processing to offerthe service. The transmission/reception data processing section 304performs processing to convert data received from the communicationdestination into one which can be processed by the service processingsection 303 and convert data created by the service processing section303 into one which can be transmitted to the communication destination.

Next, the operation unit 150 of the MFP 100 is described with referenceto FIG. 4. FIG. 4 shows an external appearance of the operation unit150. The operation unit 150 includes a liquid crystal operation panel401, start key 403, stop key 404, reset key 405, and ten keys 406.

The liquid crystal operation panel 401, which is implemented by a liquidcrystal display device with touch panel sheet, displays an operationscreen for various settings and displays input setting information. Theoperation panel 401 is also able to display a preview of still imagedata stored in the HDD 114. When an instruction is input by the user viathe touch panel, positional information representing a place touched bythe user is detected, and the content of the instruction is deliveredvia the operation unit I/F 115 to the CPU 111.

The start key 403 is a hard key for instructing the scanner unit 130 tostart a reading operation and instructing the printer unit 140 to starta printing operation. The start key 403 has a green LED and a red LEDincorporated therein. The green LED is lit when the MFP 100 is in astate ready to start the operation, whereas the red LED is lit when theMFP 100 is in a state unable to start the operation due to, e.g., error.

The stop key 404 is a hard key to instruct to stop the operation, thereset key 405 is a hard key to return various settings to their initialvalues, and the ten keys 406 are hard keys to directly input the numberof copies and the magnification ratio.

Next, an operation screen displayed on the liquid crystal operationpanel 401 is described with reference to FIG. 5. FIG. 5 shows an exampleoperation screen. The operation screen 500 shown in FIG. 5 is a COPYbasic screen, which is displayed as a default screen when the powersupply to the MFP 100 is turned on.

As functions offered to a user, the MFP 100 comprises five modes, i.e.,COPY mode, SEND mode, BOX mode, SCAN mode, and WEB browsing mode. TheCOPY mode is a mode for copy operation, in which an image of an originalis read and input by the scanner unit 130 and the image is print outputby the printer unit 140. The SEND mode is a mode in which image datainput from the scanner unit 130 or stored beforehand in the HDD 114 istransmitted in the form of, e.g., e-mail to the destination via the LAN170 or the Internet.

The BOX mode is a mode in which various data stored in a box isprocessed (edited, printed, transmitted, etc.). It should be noted thatthe box indicates a user box or a storage area on the HDD 114 assignedto each individual user. The SCAN mode is a mode in which an image of anoriginal is read and input by the scanner unit 130 and stored into a boxor transmitted to the host PC 160 via the LAN 170.

The WEB browsing mode is a mode in which the web server 180 is accessedvia the LAN 170 and a web page provided by the web server is browsed orvarious services provided by web applications on the web server areutilized.

Switching between modes other than the SCAN mode and the WEB browsingmode can be made by selecting a desired one of mode buttons 501 to 504shown in FIG. 5. It should be noted that switching between the SCAN modeand the WEB browsing mode can be made, e.g., by selecting a desired oneof mode buttons displayed when a button 505 is selected.

In the example in FIG. 5, there is shown a state where a COPY modescreen is selected. By using buttons 506 to 512 displayed on the COPYmode screen, the user is able to set equimaginification,expansion/reduction, sheet size selection, finishing designation,double-sided/single-sided designation, density designation, andtext/photo designation. When a button 513 is selected, a more detailedsetting menu is displayed, whereby the user is able to make moredetailed settings than the settings by the buttons 506 to 512.

Next, a basic screen 600 in the WEB browsing mode is described withreference to FIG. 6. FIG. 6 shows an example basic screen in the WEBbrowsing mode of the MFP 100.

Reference numeral 601 denotes a page drawing area for displaying a webpage received and developed by the web browser. Buttons 602, 603 are fordisplaying already received web pages in the order of reception. Abutton 604 is a cancel button for stopping reception of a web page whichis being received. A button 605 is an update button for inquiring theweb server 180 about the latest version of a currently displayed webpage and for acquiring and developing the latest version web page. Abutton 606 is for starting reception of a web page, which has beenregistered by a user as a homepage.

A button 607 is a print button. A currently displayed web page can beprinted by depressing the button 607. Detailed print settings can alsobe made, as required by the user. A button 608 is a favorite button forstarting reception of a web page registered by the user. Specifically, alist of titles of web pages registered by the user is displayed byselecting the button 608, and upon selection of a desired title by theuser, reception of the corresponding web page is started. A button 609is a menu button for changing web browser settings.

Reference numeral 610 denotes a progress bar for displaying the progressof web page reception. Reference numeral 611 denotes a URL display areafor displaying the URL of the received web page. A button 612 is a URLinput button. When the button 612 is selected, a soft keyboard isdisplayed. The user is able to input a URL by using the displayed softkeyboard. A button 613 is a history button for displaying the history ofURLs input by the user. By selecting a desired URL from the history,reception of the corresponding web page can be started. A button 614 isa screen display button for making settings for web browser screendisplay.

Next, with reference to FIG. 7, a description will be given of controlfor notifying a user of information on processing which is beingperformed by a processing unit (e.g., the scanner unit 130 or theprinter unit 140) provided in the MFP 100. It should be noted that theprocessing information represents, e.g., the progress of a job, aprocessing result of a job, or a state of the scanner unit 130 or theprinter unit 140 (hereinafter, collectively referred to as theprogress).

FIG. 7 shows in flowchart the procedures of processing executed by theMFP 100. The below-described processing is overall controlled by the CPU111.

In step S701, the CPU 111 registers identification information for anaccess destination web application. The identification information to beregistered is, e.g., an IP address of a web server on which the webapplication is provided. Alternatively, the identification informationmay be an URL for use in accessing the web application.

In step S702, the CPU 111 decides how the progress is displayed. In stepS703, the CPU 111 executes processing on an event notified from theprocessing unit provided in the MFP 100 during execution of or aftercompletion of processing on a job by the processing unit. The term“processing unit” indicates, e.g., the scanner unit 130 or the printerunit 140.

In step S704, the CPU 111 determines whether or not access to the webapplication is being continued. When determining that access is beingcontinued, the CPU 111 returns to step S702. On the other hand, whendetermining that the access is completed, the CPU 111 proceeds to stepS705 to execute a termination process, whereupon the process shown inFIG. 7 is completed.

In the following, respective steps performed in the flowchart of FIG. 7are described in detail with reference to FIGS. 8 to 14. FIG. 8 shows inflowchart the procedures of processing performed in step S701 of FIG. 7.

In step S801, the CPU 111 accesses the web application. In step S802,the CPU 111 acquires identification information for identifying theaccess destination web application (e.g., the IP address of the webserver). In step S803, the CPU 111 registers the identificationinformation acquired in step S802 into a storage unit such as the RAM112, HDD 114, or memory 117.

FIG. 9 shows an example of web application identification information inthis embodiment. In this example, IP addresses are registered as networkaddresses. Alternatively, URLs can be registered. Information other thannetwork addresses can also be registered. In the example of FIG. 9, aplurality of network addresses are registered. Such registration ofplural network addresses is made, e.g., when the user accesses aplurality of web applications by using a tab function of the webbrowser. In that case, the processing in step S701 is executed once foreach tab.

FIG. 10 shows in flowchart the procedures of processing performed instep S702 in FIG. 7.

In step S1001, the CPU 111 receives a job which is to be processed bythe processing unit of the MFP 100. In step S1002, the CPU 111determines whether the received job is one for which a request forprocessing has been given by a web application corresponding to theidentification information registered in step S803. Based on a result ofthis determination, how the progress is to be displayed is decided inthe following steps.

A job for which a request for processing has not been given by a webapplication corresponding to the registered identification informationis, e.g., a job for which a request for processing has been given by alocal application provided on the RAM 112 of the MFP 100, or a job forwhich a request for processing has been given by an application otherthan the web applications corresponding to the registered identificationinformation.

If the received job is a job for which a request for processing has beengiven by a web application corresponding to the identificationinformation registered in step S803, the CPU 111 proceeds to step S1003in which an output destination flag held by the control unit 110 is setat a value of 1.

If, on the other hand, the received job is not one for which a requestfor processing has been given by a web application corresponding to theidentification information registered in step S803, the CPU 111 proceedsto step S1004 in which the output destination flag is set at 0. Itshould be noted that the output destination flag is stored into astorage unit such as the HDD 114 or the memory 117.

FIG. 11 shows in flowchart the procedures of processing performed instep S703 in FIG. 7.

If, in step S1101, an event is notified from the processing unit while ajob is being processed, the CPU 111 analyzes the content of the notifiedevent in step S1102. In the next step S1103, based on a result of theanalysis, the CPU 111 determines whether the notified event is an endevent. If the notified event is an end event, the present processing iscompleted.

On the other hand, if the notified event is not an end event, the CPU111 proceeds to step S1104 to refer to the output destination flag setin step S1003 and determine whether the flag has a value of 1. If theoutput destination flag has a value of 1, the CPU 111 proceeds to stepS1105 to create drawing data for detailed progress display. On the otherhand, if the flag does not have a value of 1, the CPU 111 proceeds tostep S1107 to create drawing data for simplified progress display. Instep S1106, the CPU 111 causes the operation unit 150 to display thedrawing data created in step S1105 or S1107.

The drawing data for detailed progress display is one in accordance withwhich details of the progress are displayed on the entirety of thescreen shown in FIG. 6. On the other hand, the drawing data forsimplified progress display is one in accordance with which the progressis displayed on a portion of the screen shown in FIG. 6 (e.g., a statusdisplay line provided in a lower end area of the screen).

It should be noted that when using the drawing data for detailedprogress display, it is unnecessary to display the progress over theentirety of the screen shown in FIG. 6, insofar as the progress displayarea is larger than that based on the drawing data for simplifiedprogress display.

The progress display area may be the same between when the drawing datafor detailed progress display is used and when the drawing data forsimplified progress display is used. In that case, the drawing data fordetailed progress display contains detailed information, whereas thedrawing data for simplified progress display contains lesserinformation.

It should be noted that when using the drawing data for detailedprogress display, it is possible to clearly indicate that the progressrelates to a job, which is being executed in response to a request fromthe web application currently accessed by the MFP 100, whereby the usernotified of the progress is able to easily identify that the notifiedprogress relates to the processing which the user instructs.

FIG. 12 shows in flowchart the procedures of processing performed instep S705 in FIG. 7. In step S1201, the CPU 111 erases theidentification information registered in step S803.

FIG. 13 shows an example web application. The application in thisexample is a retouching application, in which various tools in a toolselection field 1301 can be selected to edit an image developed in animage edit field 1302.

Reference numerals 1303, 1304 respectively denote a scan button and aprint button. When the scan button 1303 is depressed, a job for causingthe scanner unit 130 to read an original is given to the MFP 100. Whenthe print button 1304 is depressed, a job for causing the printer unit140 to output read image data is given to the MFP 100. Received imagedata can be developed and edited on the image edit field 1302, and animage on the image edit field 1302 can be printed out.

FIG. 14 shows an example scan/print start screen. The screen shown inFIG. 14 is an example screen, which is displayed by the web browser whenthe scan button 1303 or the print button 1304 in FIG. 13 is depressed.

On the screen, there is displayed a field 1401, e.g., a device IPaddress setting field, in which network information, such as an IDaddress of the MFP 100 which is a processing request destination, can beset. The network information on the MFP currently accessing the webapplication can be displayed, the network information being input inadvance as a default value. When a cancel button 1402 is selected,processing is stopped and the screen is returned to the screen shown inFIG. 13. When a decision button 1403 is selected, the unit correspondingto the field 1401 is requested to execute processing.

In the above example, the progress is displayed by using the drawingdata for detailed progress display when the output destination flag hasa value of 1, whereas the progress is displayed by using the drawingdata for simplified progress display when the output destination flaghas a value other than 1. Alternatively, the progress may be displayedby using drawing data only when the output destination flag has a valueof 1, whereas the progress may not be displayed when the outputdestination flag has a value other than 1.

As described above, the information processing apparatus of thisembodiment accesses a web application, registers identificationinformation for the web application, and determines whether processingto be executed by the processing unit is one executed in response to arequest from a web application corresponding to any of registeredidentification information. Then, a notification method to notifyinformation on processing having been or being executed by theprocessing unit is made different depending on whether it is determinedthat the processing to be executed by the processing unit is oneexecuted in response to a request from a web application correspondingto any of the registered identification information. Alternatively, in acase where it is determined that the processing to be executed by theprocessing unit is one executed in response to a request from a webapplication corresponding to any of the registered identificationinformation, the information on the processing is notified. Otherwise,the information on the processing is not notified.

In a first concrete example of the notification, in a case where it isdetermined that the processing to be executed by the processing unit isone executed in response to a request from a web applicationcorresponding to any of the registered identification information, theinformation on the processing having been or being executed by theprocessing unit is notified in detail. On the other hand, in a casewhere it is determined that the processing to be executed by theprocessing unit is one executed in response to a request from a localapplication without intervention of any of web applications provided onthe web server, the information on the processing having been or beingexecuted by the processing unit is briefly notified.

In a second concrete example, in a case where it is determined thatprocessing executed by the processing unit is one executed in responseto a request from a web application corresponding to any of theregistered identification information, information on the processinghaving been or being executed by the processing unit is notified indetail. On the other hand, in a case where it is determined that theprocessing to be executed by the processing unit is one executed inresponse to a request from a web application other than web applicationscorresponding to the registered identification information, theinformation on the processing having been or being executed by theprocessing unit is briefly notified.

In a third concrete example, in a case where it is determined thatprocessing to be executed by the processing unit is one executed inresponse to a request from a web application corresponding to any of theregistered identification information, information on the processinghaving been or being executed by the processing unit is notified. On theother hand, in a case where it is determined that the processing to beexecuted by the processing unit is one executed in response to a requestfrom a local application without intervention of any of web applicationsprovided on the web server, information on the processing having been orbeing executed by the processing unit is not notified.

In a fourth concrete example, in a case where it is determined thatprocessing to be executed by the processing unit is one executed inresponse to a request from a web application corresponding to any of theregistered identification information, information on the processinghaving been or being executed by the processing unit is notified. On theother hand, in a case where it is determined that the processing to beexecuted by the processing unit is one executed in response to a requestfrom a web application other than web applications corresponding to theregistered identification information, information on the processinghaving been or being executed by the processing unit is not notified.

With the information processing apparatus of the embodiment having theconstruction described above, it is possible to notify to the user,without the intervention of the web server, information on theprocessing having been or being executed by the processing unit. As aresult, the information on the processing having been or being executedby the processing unit can be notified realtime, and the increase innetwork traffic can be prevented.

Other Embodiment

Aspects of the present invention can also be realized by a computer of asystem or apparatus (or devices such as a CPU or MPU) that reads out andexecutes a program recorded on a memory device to perform the functionsof the above-described embodiment, and by a method, the steps of whichare performed by a computer of a system or apparatus by, for example,reading out and executing a program recorded on a memory device toperform the functions of the above-described embodiment. For thispurpose, the program is provided to the computer for example via anetwork or from a recording medium of various types serving as thememory device (e.g., computer-readable medium).

While the present invention has been described with reference to anexemplary embodiment, it is to be understood that the invention is notlimited to the disclosed exemplary embodiment. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2008-257785, filed Oct. 2, 2008, which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. An information processing apparatus, comprising:a display unit configured to display information; a processing unitconfigured to execute a processing in response to a request; an accessunit configured to access a web application provided on an externalapparatus on a network; a determination unit configured to determinewhether a particular processing executed by the processing unit is oneexecuted in response to a request from the web application beingaccessed by said access unit, or one executed in response to a requestfrom a local application provided on the information processingapparatus; a selection unit configured to select a detailed notificationmethod for an occurrence of a particular event resulting from theparticular processing in response to a determination by saiddetermination unit that the particular processing executed by theprocessing unit is one executed in response to a request from the webapplication being accessed by said access unit, and to select a simplenotification method for the occurrence of the particular event inresponse to a determination by said determination unit that theparticular processing executed by the processing unit is one executed inresponse to a request from the local application, notification by thesimple notification method being simpler than notification by thedetailed notification method; and a notification unit configured tonotify, via said display unit, information on the occurrence of theparticular event by the simple notification method in a case where saidselecting unit selects the simple notification method, and to notify,via said display unit, the information on the occurrence of theparticular event by the detailed notification method in a case wheresaid selecting unit selects the detailed notification method.
 2. Theinformation processing apparatus according to claim 1, furthercomprising: a registration unit configured to register identificationinformation of the web application when said access unit starts toaccess the web application, wherein said determination unit isconfigured to perform the determination based on the identificationinformation registered by said registration unit.
 3. The informationprocessing apparatus according to claim 1, wherein the processing unitis a printing unit configured to form an image on a recording mediumbased on image data.
 4. The information processing apparatus accordingto claim 2, further comprising: an erase unit configured, in response tocompletion of access to the web application by said access unit, toerase a corresponding identification information registered by saidregistration unit.
 5. The information processing apparatus according toclaim 1, wherein said access unit is configured to access the webapplication in accordance with an instruction input via a web browserprovided on the information processing apparatus.
 6. The informationprocessing apparatus according to claim 2, wherein the identificationinformation is a URL that identifies the corresponding web applicationor an IP address that identifies an external apparatus on which thecorresponding web application is provided.
 7. A control method for aninformation processing apparatus including a display unit configured todisplay information, the method comprising: an execution step of aprocessing unit of the information processing apparatus executing aprocessing in response to a request; an access step of accessing a webapplication provided on the an external apparatus on a network; adetermination step of determining whether a particular processingexecuted by the processing unit is one executed in response to a requestfrom the web application being accessed in said access step, or oneexecuted in response to a request from a local application provided onthe information processing apparatus; a selection step of selecting adetailed notification method for an occurrence of a particular eventresulting from the particular processing in response to a determinationin said determination step that the particular processing executed bythe processing unit is one executed in response to a request from theweb application being accessed in said access step, and to select asimple notification method for the occurrence of the particular event inresponse to a determination in said determination step that theparticular processing to be executed by the processing unit is oneexecuted in response to a request from the local application,notification by the simple notification method being simpler thannotification by the detailed notification method; and a notificationstep of notifying, via said display unit, information on the occurrenceof the particular event by the simple notification method in a casewhere the simple notification method is selected in said selecting step,and to notify, via said display unit, the information on the occurrenceof the particular event by the detailed notification method in a casewhere the detailed notification method is selected in said selectingstep.
 8. A non-transitory computer-readable storage medium storing aprogram for causing at least a computer to execute a control method foran information processing apparatus including a display unit configuredto display information, the method comprising: an execution step of aprocessing unit of the information processing apparatus executing aprocessing in response to a request; an access step of accessing a webapplication provided on an external apparatus on a network; adetermination step of determining whether a particular processingexecuted by the processing unit is one executed in response to a requestfrom the web application being accessed in said access step, or oneexecuted in response to a request from a local application provided onthe information processing apparatus; a selection step of selecting adetailed notification method for an occurrence of a particular eventresulting from the particular processing in response to a determinationin said determination step that the particular processing executed bythe processing unit is one executed in response to a request from theweb application being accessed in said access step, and to select asimple notification method for the occurrence of the particular event inresponse to a determination in said determination step that theparticular processing to be executed by the processing unit is oneexecuted in response to a request from the local application,notification by the simple notification method being simpler thannotification by the detailed notification method; and a notificationstep of notifying, via said display unit, information on the occurrenceof the particular event by the simple notification method in a casewhere the simple notification method is selected in said selecting step,and to notify, via said display unit, the information on the occurrenceof the particular event by the detailed notification method in a casewhere the detailed notification method is selected in said selectingstep.
 9. An information processing apparatus comprising: a display unitconfigured to display information; a hardware processor; and a memoryconnected to the hardware processor and storing a program executable bythe hardware processor, the program comprising: processing instructionsconfigured to execute a processing in response to a request; accessinstructions configured to access a web application provided on anexternal apparatus on a network; determination instructions configuredto determine whether a particular processing executed according to theprocessing instructions is one executed in response to a request fromthe web application being accessed according to said accessinstructions, or one executed in response to a request from a localapplication provided on the information processing apparatus; selectioninstructions configured to select a detailed notification method for anoccurrence of a particular event resulting from the particularprocessing in response to a determination according to saiddetermination instructions that the particular processing to be executedaccording to the processing instructions is one executed in response toa request from the web application being accessed according to saidaccess instructions, and to select a simple notification method for theoccurrence of the particular event in response to a determinationaccording to said determination instructions that the particularprocessing executed according to the processing instructions is oneexecuted in response to a request from the local application,notification by the simple notification method being simpler thannotification by the detailed notification method; and notificationinstructions configured to notify, via said display unit, information onthe occurrence of the particular event by the simple notification methodin a case where the simple notification method is selected according tosaid selection instructions, and to notify, via said display unit, theinformation on the occurrence of the particular event by the detailednotification method in a case where the detailed notification method isselected according to said selection instructions.